JRockit版本号的规则有点复杂,至少包含3部分:
查看JVM版本号的方法是在命令行中执行命令java -version
,典型的输出如下所示:
java version "1.6.0_14"
Java(TM) SE Runtime Environment (build 1.6.0_14-b08)
Oracle JRockit(R) (build R28.0.0-582-123273-1.6.0_14-20091029-2121-windows-ia32, compiled mode)
JRockit版本的第一个部分是与JVM绑定的JDK的版本号。该JDK版本与标准JDK版本同步,也就是与随HotSpot发行的JDK版本相同。从上面的例子可以看到,Java的版本是1.6,更新版本号是14-b08。如果你想看某个JDK发行版中修复哪些问题,就可以直接查看这个版本号下对应的发行信息。
JRockit版本号以字母 R 开头,在上面的例子中,JRockit的版本号是R28.0.0。每个版本的JRockit JVM都可以支持多个版本的JDK。例如,R27.6.5支持Java 1.4,1.5和1.6。而在JRockitR28中,JDK 1.4已经不再支持范围内了。
紧跟JRockit JVM版本号的是构建号,然后是修改号。在上面的例子汇总,构建号是582,修改好是123273,在这之后的2个数字是构建的日期和时间。再后面是操作系统和CPU架构信息。
在命令行中执行jrmc -version
或jrmc -version | more
可以查看JRockit Mission Control的版本号,其输出如下所示:
Oracle JRockit(R) Mission Control(TM) 4.0 (for JRockit R28.0.0)
java.vm.version = R28.0.0-582-123273-1.6.0_14-20091029-2121-windows-ia32
build = R28.0.0-582
chno = 123217
jrmc.fullversion = 4.0.0
jrmc.version = 4.0
jrockit.version = R28.0.0
year = 2009
在Windows平台,为了避免打开一个控制台界面,是使用javaw来载入JRockit Mission Control的。如果不显示做输出重定向的话,是不会看到控制台输出内容的。
The first line tells us what version of Mission Control this is and what version of JRockit it was created for. The java.vm.version line tells us what JVM Mission Control is actually running on. If Mission Control has been launched too "creatively", for example by directly invoking its main class, there may be differences between the JVM information in the two lines. If this is the case, some functionality in JRockit Mission Control, such as automatic local JVM discovery, may be disabled.
上面的JRockit Mission Control的版本信息中,第一行执行了Mission Control的版本号,以及对应的JRockit JVM版本信息。第二行的属性java.vm.version
的值指明了运行当前Mission Control的JVM的版本信息。如果使用一些其他方式来启动Mission Control,例如直接调用主类来启动,则这两行输出的内容可能会略有不同,这时,JRockit Mission Control中的某些功能可能会被禁用,例如本地JVM的自动检测。